package com.shazhu.nongjt.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.shazhu.common.annotation.Excel;
import com.shazhu.common.core.domain.BaseEntity;

/**
 * 合格证信息对象 njt_qualification
 * 
 * @author shazhu
 * @date 2025-09-29
 */
public class NjtQualification extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 合格证编号 */
    @Excel(name = "合格证编号")
    private String qualificationNo;

    /** 用户ID */
    @Excel(name = "用户ID")
    private Long userId;

    /** 用户完善信息 */
    @Excel(name = "用户完善信息")
    private Long userPerfectId;

    /** 主体名称 */
    @Excel(name = "主体名称")
    private String subjectName;

    /** 产品名称 */
    @Excel(name = "产品名称")
    private String productName;

    /** 产品数量 */
    @Excel(name = "产品数量")
    private BigDecimal productCount;

    /** 单位 */
    @Excel(name = "单位")
    private String unit;

    /** 产地信息 */
    @Excel(name = "产地信息")
    private String productArea;

    /** 省 */
    @Excel(name = "省")
    private String province;

    /** 市 */
    @Excel(name = "市")
    private String city;

    /** 区/县 */
    @Excel(name = "区/县")
    private String area;

    /** 乡镇/街道 */
    @Excel(name = "乡镇/街道")
    private String country;

    /** 开具日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开具日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date issueDate;

    /** 检测报告 */
    @Excel(name = "检测报告")
    private String detectReport;

    /** 检测报告类型 */
    @Excel(name = "检测报告类型")
    private Integer detectReportType;

    /** 是否打印合格证抬头 */
    @Excel(name = "是否打印合格证抬头")
    private Integer qualificationTitleFlag;

    /** 签名图片 */
    @Excel(name = "签名图片")
    private String signUrl;

    /** 打印次数 */
    @Excel(name = "打印次数")
    private Long printCount;

    /** 删除标记 */
    private Long delFlag;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setQualificationNo(String qualificationNo) 
    {
        this.qualificationNo = qualificationNo;
    }

    public String getQualificationNo() 
    {
        return qualificationNo;
    }

    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }

    public void setUserPerfectId(Long userPerfectId) 
    {
        this.userPerfectId = userPerfectId;
    }

    public Long getUserPerfectId() 
    {
        return userPerfectId;
    }

    public void setSubjectName(String subjectName) 
    {
        this.subjectName = subjectName;
    }

    public String getSubjectName() 
    {
        return subjectName;
    }

    public void setProductName(String productName) 
    {
        this.productName = productName;
    }

    public String getProductName() 
    {
        return productName;
    }

    public void setProductCount(BigDecimal productCount) 
    {
        this.productCount = productCount;
    }

    public BigDecimal getProductCount() 
    {
        return productCount;
    }

    public void setUnit(String unit) 
    {
        this.unit = unit;
    }

    public String getUnit() 
    {
        return unit;
    }

    public void setProductArea(String productArea) 
    {
        this.productArea = productArea;
    }

    public String getProductArea() 
    {
        return productArea;
    }

    public void setProvince(String province) 
    {
        this.province = province;
    }

    public String getProvince() 
    {
        return province;
    }

    public void setCity(String city) 
    {
        this.city = city;
    }

    public String getCity() 
    {
        return city;
    }

    public void setArea(String area) 
    {
        this.area = area;
    }

    public String getArea() 
    {
        return area;
    }

    public void setCountry(String country) 
    {
        this.country = country;
    }

    public String getCountry() 
    {
        return country;
    }

    public void setIssueDate(Date issueDate) 
    {
        this.issueDate = issueDate;
    }

    public Date getIssueDate() 
    {
        return issueDate;
    }

    public void setDetectReport(String detectReport) 
    {
        this.detectReport = detectReport;
    }

    public String getDetectReport() 
    {
        return detectReport;
    }

    public void setDetectReportType(Integer detectReportType) 
    {
        this.detectReportType = detectReportType;
    }

    public Integer getDetectReportType() 
    {
        return detectReportType;
    }

    public void setQualificationTitleFlag(Integer qualificationTitleFlag) 
    {
        this.qualificationTitleFlag = qualificationTitleFlag;
    }

    public Integer getQualificationTitleFlag() 
    {
        return qualificationTitleFlag;
    }

    public void setSignUrl(String signUrl) 
    {
        this.signUrl = signUrl;
    }

    public String getSignUrl() 
    {
        return signUrl;
    }

    public void setPrintCount(Long printCount) 
    {
        this.printCount = printCount;
    }

    public Long getPrintCount() 
    {
        return printCount;
    }

    public void setDelFlag(Long delFlag) 
    {
        this.delFlag = delFlag;
    }

    public Long getDelFlag() 
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("qualificationNo", getQualificationNo())
            .append("userId", getUserId())
            .append("userPerfectId", getUserPerfectId())
            .append("subjectName", getSubjectName())
            .append("productName", getProductName())
            .append("productCount", getProductCount())
            .append("unit", getUnit())
            .append("productArea", getProductArea())
            .append("province", getProvince())
            .append("city", getCity())
            .append("area", getArea())
            .append("country", getCountry())
            .append("issueDate", getIssueDate())
            .append("detectReport", getDetectReport())
            .append("detectReportType", getDetectReportType())
            .append("qualificationTitleFlag", getQualificationTitleFlag())
            .append("signUrl", getSignUrl())
            .append("printCount", getPrintCount())
            .append("delFlag", getDelFlag())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
